package optimizers.simplega;

import util.MyUtil;

public class Constants {

	public static final boolean SILENT_MODE = false;

	public static int popSize = 500;
	public static int generations = 200;
	public static int nParallelThreads = 24;
	public static int nSimpleSequences = 4;
	public static int elitismPercentage = 5;
	public static int tournamentSizePercentage = 10;

	public static double Kduplex = 0.2;
	public static final double gSeqInitConcentration = 10;
	public static final double gSeqInitConcentration_low = .010;
	public static double gKseqLibMin = 3E-2 / Kduplex;
	public static double gKseqLibMax = 2e1 / Kduplex;
	public static final double gActTemplateInitConcentrationLibMin = 0.6;
	public static final double gActTemplateInitConcentrationLibMax = 60;
	public static final double[] gExoLib = { 0.10, 0.15, 0.20, 0.25, 0.30,
			0.35, 0.40, 0.45, 0.50, 0.55, 0.60, 0.65, 0.70, 0.80, 0.90, 1.0 };
	public static double defaultExo = (double) 19 / 30;

	// Probabilities
	public static final double probParamMutation = .5; // otherwise structure
	// mutation
	public static final double probRandomParamMutate = 0.01;
	public static final double probMutateActivation = 0.5; // otherwise add
	public static final double probGeneMutation = 0.4; // whether to mutate
														// params of this gene
														// or not
	public static double paramMutateGaussianFactor = 0.2; // for normal
															// distribution

}
